package com.spic.system.mapper;

import com.spic.system.domain.SysNumberConfig;
import com.spic.system.domain.SysNumberHistory;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 流水号历史Mapper接口
 *
 * @author spic
 * @date 2021-11-02
 */
public interface SysNumberHistoryMapper {
    /**
     * 查询流水号历史
     *
     * @param id 流水号历史主键
     * @return 流水号历史
     */
    public SysNumberHistory selectSysNumberHistoryById(Long id);

    /**
     * 根据编码规则id，获取获取编码历史记录
     * @param ids
     * @return
     */
    Integer getCountByNumberConfigIds(Long[] ids);

    /**
     * 查询流水号历史列表
     *
     * @param sysNumberHistory 流水号历史
     * @return 流水号历史集合
     */
    public List<SysNumberHistory> selectSysNumberHistoryList(SysNumberHistory sysNumberHistory);

    /**
     * 新增流水号历史
     *
     * @param sysNumberHistory 流水号历史
     * @return 结果
     */
    public int insertSysNumberHistory(SysNumberHistory sysNumberHistory);

    /**
     * 修改流水号历史
     *
     * @param sysNumberHistory 流水号历史
     * @return 结果
     */
    public int updateSysNumberHistory(SysNumberHistory sysNumberHistory);

    /**
     * 删除流水号历史
     *
     * @param id 流水号历史主键
     * @return 结果
     */
    public int deleteSysNumberHistoryById(Long id);

    /**
     * 批量删除流水号历史
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSysNumberHistoryByIds(Long[] ids);


    SysNumberHistory selectByConfig(@Param("config") SysNumberConfig config);
}
